package com.sh.data.engine.domain.dataquality.model.domain;

import com.sh.data.engine.domain.base.model.BaseDomain;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.util.Date;

/**
 * @author tinglan.ys
 * @description:
 * @date 2022/2/18 下午4:40
 */
@Data
@SuperBuilder
@NoArgsConstructor
//@ApiModel
public class DataQualityScheduleDomain extends BaseDomain {

    /**
     * hive表id
     */
    private Long tblId;

    /**
     * 项目id
     */
    private Long projectId;

    /**
     * 调度状态 0-未冻结 1-冻结
     */
//    @ApiModelProperty(value = "调度状态 0-未冻结 1-冻结")
    private Integer status;

    /**
     * 生效日期（开始）
     */
//    @ApiModelProperty(value = "生效日期（开始）")
    private Date effectiveDateStart;

    /**
     * 生效日期（结束）
     */
//    @ApiModelProperty(value = "生效日期（结束）")
    private Date effectiveDateEnd;

    /**
     * 调度周期 0-月 1-周 2-天 3-小时 4-分钟
     */
//    @ApiModelProperty(value = "调度周期 0-月 1-周 2-天 3-小时 4-分钟")
    private Integer cycle;

    /**
     * 执行开始时间的小时
     */
//    @ApiModelProperty(value = "执行开始时间的小时")
    private Integer startTimeHour;

    /**
     * 执行开始时间的分钟
     */
//    @ApiModelProperty(value = "执行开始时间的分钟")
    private Integer startTimeMin;

    /**
     * 执行结束时间的小时
     */
//    @ApiModelProperty(value = "执行结束时间的小时")
    private Integer endTimeHour;

    /**
     * 执行结束时间的分钟
     */
//    @ApiModelProperty(value = "执行结束时间的分钟")
    private Integer endTimeMin;

    /**
     * 月、周为执行日期 ，小时、分钟为执行间隔
     */
//    @ApiModelProperty(value = "月、周为执行日期 ，小时、分钟为执行间隔")
    private String execPoint;

    /**
     * 下次计划执行时间
     */
//    @ApiModelProperty(value = "下次计划执行时间")
    private Date nextExecTime;

    private Integer cycleDependence;
}
